<?php

namespace Mouta\SeowebBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Mouta\SeowebBundle\Util;

/**
 * Mouta\SeowebBundle\Entity\categoria
 *
 * @ORM\Table()
 * @ORM\Entity
 */
class categoria
{
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string $nombre
     *
     * @ORM\Column(name="nombre", type="string", length=255)
     */
    private $nombre;

    /**
     * @var string $slug
     *
     * @ORM\Column(name="slug", type="string", length=255)
     */
    private $slug;

    /**
     * @ORM\ManyToMany(targetEntity="Mouta\SeowebBundle\Entity\Pagina", mappedBy="categoria")
     */
    protected $pagina;
    
    public function __toString() {
        return $this->getNombre();
    }
    
    
    /**
     * Constructor
     */
    public function __construct()
    {
        $this->pagina = new \Doctrine\Common\Collections\ArrayCollection();
    }
    
    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set nombre
     *
     * @param string $nombre
     * @return categoria
     */
    public function setNombre($nombre)
    {
        $this->nombre = $nombre;
        $this->slug = \Mouta\SeowebBundle\Util\Util::getSlug($nombre);
    

    }

    /**
     * Get nombre
     *
     * @return string 
     */
    public function getNombre()
    {
        return $this->nombre;
    }

    /**
     * Set slug
     *
     * @param string $slug
     * @return categoria
     */
    public function setSlug($slug)
    {
        $this->slug = $slug;

        return $this;
    }

    /**
     * Get slug
     *
     * @return string
     */
    public function getSlug()
    {
        return $this->slug;
    }

    /**
     * Add pagina
     *
     * @param Mouta\SeowebBundle\Entity\Pagina $pagina
     * @return categoria
     */
    public function addPagina(\Mouta\SeowebBundle\Entity\Pagina $pagina)
    {
        $this->pagina[] = $pagina;
    
        return $this;
    }

    /**
     * Remove pagina
     *
     * @param Mouta\SeowebBundle\Entity\Pagina $pagina
     */
    public function removePagina(\Mouta\SeowebBundle\Entity\Pagina $pagina)
    {
        $this->pagina->removeElement($pagina);
    }

    /**
     * Get pagina
     *
     * @return Doctrine\Common\Collections\Collection 
     */
    public function getPagina()
    {
        return $this->pagina;
    }
}